package com.ltxtiyu.video.common;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

/**
 * 分页实体
 * 
 */
public class DataGridParam implements Serializable {

	/**
     * 
     */
	private static final long serialVersionUID = -92262486518185434L;
	private Integer page;
	private Integer rows;
	private String sort;
	private String order;
	private Map<String, Object> paramMap;

	/**
	 * 页码
	 * 
	 * @return 当前页码
	 */
	public Integer getPage() {
		return page;
	}

	/**
	 * 页码
	 * 
	 * @param page
	 *            页码
	 */
	public void setPage(Integer page) {
		this.page = page;
	}

	/**
	 * 每页显示的记录数
	 * 
	 * @return 页记录数
	 */
	public Integer getRows() {
		return rows;
	}

	/**
	 * 每页显示的记录数
	 * 
	 * @param rows
	 *            记录行数
	 */
	public void setRows(Integer rows) {
		this.rows = rows;
	}

	/**
	 * 参与排序的列
	 * 
	 * @return 参与排序的列
	 */
	public String getSort() {
		return sort;
	}

	/**
	 * 参与排序的列
	 * 
	 * @param sort
	 *            参与排序的列
	 */
	public void setSort(String sort) {
		this.sort = sort;
	}

	/**
	 * 排序方式 asc or desc
	 * 
	 * @return 排序方式
	 */
	public String getOrder() {
		return order;
	}

	/**
	 * 排序方式
	 * 
	 * @param order
	 *            排序方式
	 */
	public void setOrder(String order) {
		this.order = order;
	}

	public Map<String, Object> getParamMap() {
		paramMap = new HashMap<String, Object>();
		this.paramMap.put("sort", getSort());
		this.paramMap.put("order", getOrder());
		this.paramMap.put("start", ((getPage() == null ? 1 : getPage()) - 1)
				* (getRows() == null ? 0 : getRows()));
		this.paramMap.put("rows", getRows());
		return paramMap;
	}

	public Map<String, Object> getParamMapOnlySort() {
		paramMap = new HashMap<String, Object>();
		this.paramMap.put("sort", getSort());
		this.paramMap.put("order", getOrder());
		return paramMap;
	}
}
